1. Field of the Invention
The present invention generally relates to switching systems and, more particularly, to a parallel architecture of a switch subsystem which handles a multitude of requests per link, performs connect service in parallel, and uses a cross-bar switch.
2. Description of the Prior Art
Computer systems are comprised of a number of units such as processing units, memory modules, and controller units for communications, displays, and storage devices. These units function independently but do exchange data from time to time and sometimes quite frequently. A simple and direct way for connecting these units, and thus providing a vehicle for data transfer, is through a bus. For small systems, a single bus is a cost-effective way of connecting the various units of the system. Larger systems with more than just a few units or with high bandwidth requirements need a non-blocking connection subsystem which provides minimal contention and thus yields high performance. An example of such a system is a switch subsystem utilizing a cross-bar switch. A complete switch subsystem would, in addition to the cross-bar switch, include switch servers and a data structure which control the operation of the switch and implement an interface protocol to the switch subsystem.
An example of the type of switch subsystem described is disclosed in U.S. Pat. No. 4,630,045 to C. Georgiou. Georgiou describes a high-performance controller for a cross-bar switch particularly adapted for use in multi-processor computer applications. The controller has a parallel/pipeline architecture that allows one step of a first request to be serviced simultaneously with another step of a second request with several substeps of a step to be performed concurrently. The Georgiou switch subsystem performs well in large computer system installations, but its cost is too high for low end applications.
What is needed is a switching subsystem which provides good performance while being relatively inexpensive so that this type of switching capability can be made available to low-end computer systems.